﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using Telerik.WinControls;

namespace Sistema_de_Patrimonio.SDP_UI.Articulos
{
    public partial class Articulos_Modificar : Telerik.WinControls.UI.RadForm
    {
        public Articulos_Modificar()
        {
            InitializeComponent();
        }

        private void BtnModificacionCancelar_Click(object sender, EventArgs e)
        {
            this.Close();
        }

        private void BtnModificacionAceptar_Click(object sender, EventArgs e)
        {

            if (TxtModificacionDependencia.Text.Length == 0)
             {
                 MessageBox.Show("Falta ingresar la Dependencia", "Error...", MessageBoxButtons.OK, MessageBoxIcon.Information);
                 TxtModificacionDependencia.Focus();
             }

            else if (TxtModificacionDescripcion.Text.Length == 0)
            {
                MessageBox.Show("Falta ingresar una Descripción", "Error...", MessageBoxButtons.OK, MessageBoxIcon.Information);
                TxtModificacionDescripcion.Focus();
            }
                        else if (TxtModificacionCuenta.Text.Length == 0)
            {
                MessageBox.Show("Falta ingresar una Cuenta", "Error...", MessageBoxButtons.OK, MessageBoxIcon.Information);
                TxtModificacionCuenta.Focus();
            }

                        else if (TxtModificacionInventario.TextLength == 0)
                        {
                            MessageBox.Show("Falta ingresar el N° de Inventario", "Error...", MessageBoxButtons.OK, MessageBoxIcon.Information);
                            TxtModificacionInventario.Focus();
                        }
                        else
                        {
                            Common_Files.Definitions.Articulo Articulo = new Common_Files.Definitions.Articulo();
                            Articulo.Articulo_Inventario = Convert.ToUInt32(TxtModificacionInventario.Text);
                            Articulo.Articulo_Cuenta = Convert.ToUInt32(TxtModificacionCuenta.Text);
                            if (TxtModificacionConcepto.Text.Length == 0) TxtModificacionConcepto.Text = "0";
                            Articulo.Articulo_Concepto = Convert.ToUInt32(TxtModificacionConcepto.Text);
                            Articulo.Dependencia_ID = Convert.ToUInt32(TxtModificacionDependencia.Text);
                            Articulo.Articulo_Descripcion = TxtModificacionDescripcion.Text;
                            if (TxtModificacionPrecio.Text.Length == 0) TxtModificacionPrecio.Text = "0";
                            Articulo.Articulo_Precio = Convert.ToDecimal(TxtModificacionPrecio.Text);
                            Articulo.Articulo_Concepto = Convert.ToUInt32(TxtModificacionConcepto.Text);
                            Articulo.Articulo_FechaAdquirido = Convert.ToDateTime(TxtModificacionFechaAdquisicion.Value);
                            if (txtModificacionValorResidual.Text.Length == 0) txtModificacionValorResidual.Text = "0";
                            else Articulo.Articulo_Residual = Convert.ToDecimal(txtModificacionValorResidual.Text);
                            if (TxtModificacionTipoDocumento.Text.Length == 0) Articulo.Articulo_TipoDocumento = 1;
                            else
                            Articulo.Articulo_TipoDocumento = Convert.ToUInt32(TxtModificacionTipoDocumento.SelectedItem.Tag);
                            if (TxtModificacionNumeroDocumento.Text.Length == 0) TxtModificacionNumeroDocumento.Text = "0";
                            Articulo.Articulo_NumeroDoc = Convert.ToUInt32(TxtModificacionNumeroDocumento.Text);
                            if (TxtModificacionPorcentaje.Text.Length == 0) TxtModificacionPorcentaje.Text = "0";
                            Articulo.Articulo_Porcentaje = Convert.ToDecimal(TxtModificacionPorcentaje.Text);
                            Articulo.Articulo_FechaInforme = Convert.ToDateTime(TxtModificacionFechaInforme.Value);
                            Articulo.Articulo_ModificadoPor = SDP_UI.Usuarios.Usuarios_Login.Usuario_Nombre;

                            SDP_DAL.Articulo_DAL Modifico = new SDP_DAL.Articulo_DAL();
                            Modifico.ArticuloUpdate(Articulo);

                            MessageBox.Show("Se Modifico el Artículo Exitosamente", "Advertencia", MessageBoxButtons.OK, MessageBoxIcon.Information);
                            this.Close();
                        }
        }

        private void Articulos_Modificar_Load(object sender, EventArgs e)
        {
            TxtModificacionDependencia_Validated(sender, e);
        }

        private void txtDecimals_KeyPress(object sender, KeyPressEventArgs e)
        {
            if (char.IsLetter(e.KeyChar))
            {
                e.Handled = true;
            }

            if (e.KeyChar == ',')
            {
                e.Handled = true; SendKeys.Send(".");
            }
            base.OnKeyPress(e);

            if (e.KeyChar == (char)(Keys.Enter))
            {
                e.Handled = true; SendKeys.Send("{TAB}");
            }
            base.OnKeyPress(e);
        }


        private void txtEnter_KeyPress(object sender, KeyPressEventArgs e)
        {
            if (e.KeyChar == (char)(Keys.Enter))
            {
                e.Handled = true; SendKeys.Send("{TAB}");
            }
            base.OnKeyPress(e);
        }

        private void txtDigitos_KeyPress(object sender, KeyPressEventArgs e)
        {
            if (!char.IsControl(e.KeyChar) && !char.IsDigit(e.KeyChar))
            {
                e.Handled = true;
            }

            if (e.KeyChar == (char)(Keys.Enter))
            {
                e.Handled = true; SendKeys.Send("{TAB}");
            }
            base.OnKeyPress(e);
        }

        private void TxtAltaInventario_Validated(object sender, EventArgs e)
        {
            SDP_DAL.Dependencia_DAL Dependencia = new SDP_DAL.Dependencia_DAL();
            LblDependencia.Text = Dependencia.NombreDependencia(Convert.ToInt16(TxtModificacionDependencia.Text));
            LblDependencia.Visible = true;
        }

        private void TxtModificacionDependencia_Validated(object sender, EventArgs e)
        {
            String Aux = "";
            if (TxtModificacionDependencia.Text.Length > 0)
            {
                SDP_DAL.Dependencia_DAL Dependencia = new SDP_DAL.Dependencia_DAL();
                Aux = Dependencia.NombreDependencia(Convert.ToInt16(TxtModificacionDependencia.Text));
                if (Aux == "") MessageBox.Show("No Existe la Dependencia Introducida", "Advertencia", MessageBoxButtons.OK, MessageBoxIcon.Information);
                LblDependencia.Text = Aux;
                LblDependencia.Visible = true;
            }
        }
    }
}
